<?php
include_once ('Empresa.php');
include_once ('Persona.php');

/**
 * @version 1.0
 * @created 07-jun-2004 22:58:26
 */
class Reclutador extends Persona
{
	var $_idReclutador;
	var $_idPersona;
	var $_idEmpresa;
	var $_usuario;
	var $_password;
	var $_puesto;
	var $_telefono;
	var $_ext;
	var $_tipo;

	function ConsultaDatosReclutador($idReclutador)
	{
		$db = new DB();
		$sql= "SELECT * FROM reclutador r, persona p WHERE 
				r.idpersona = p.idpersona AND
				r.idreclutador=". $idReclutador;

		$db->Conectar();
		$db->Query($sql);
		$row = $db->GetArray(0);
		$this->_idReclutador = $row["idreclutador"];
		$this->_idPersona = $row["idpersona"];
		$this->_idEmpresa = $row["idempresa"];
		$this->_usuario = $row["usuario"];
		$this->_password = $row["password"];
		$this->_puesto = $row["puesto"];
		$this->_telefono = $row["telefono"];
		$this->_ext = $row["ext"];
		$this->_tipo = $row["tipo"];
		$this->_idPersona = $row["idpersona"];
		$this->_apellidoPaterno = $row["apellidopaterno"];
		$this->_apellidoMaterno = $row["apellidomaterno"]; 
		$this->_nombre = $row["nombre"];
		$this->_correoElectronico = $row["correoelectronico"];
		$db->Cerrar();	
	}

	function ValidaReclutador($usuario, $password)
	{
	
		$db = new DB();
		$db->Conectar();
		$sql = "SELECT * FROM reclutador r, empresa e, persona p WHERE UPPER(r.usuario) ='". 
				strtoupper($usuario) ."' 
				AND
				p.idpersona = r.idpersona
				AND r.password ='". $password ."'
				AND
				e.idempresa = r.idempresa
				AND
				e.estatusempresa <> 'I'
				"; 
		
		$db->Query($sql);
		if($db->NumLineas() == 1)
		{
			$row = $db->GetArray(0);
			$cadena = $row["idreclutador"]."-".$row["idempresa"]."-".$row["tipo"]."-".$row["idpersona"]."-".$row["nombre"]." ".$row["apellidopaterno"]."-".$row["mostrarsueldo"]."-".$row["estatusempresa"];
			$db->Cerrar();
			return $cadena;
		}
		else
		{
			$db->Cerrar();
			return 0;
		}
	}

	function MostrarReclutadores($idEmpresa)
	{
			return "SELECT * FROM reclutador r, persona p 
				WHERE r.idpersona = p.idpersona AND r.idempresa= ". $idEmpresa ." 
				ORDER BY nombre";
	}

	function CambiarAdministrador($idReclutador, $idEmpresa)
	{
		$db = new DB();
		$sql = "
			UPDATE reclutador SET tipo = 'A' WHERE idreclutador =". $idReclutador ." AND
			idempresa=". $idEmpresa;
		$db->Conectar();
		$db->Query($sql);
		$db->Cerrar();
	}
	
	function BorrarAdministradores($idEmpresa)
	{
		$db = new DB();
		$sql = "
			UPDATE reclutador SET tipo = 'N' WHERE idempresa=". $idEmpresa;
		$db->Conectar();
		$db->Query($sql);
		$db->Cerrar();
	}

	function AltaReclutador($empresa, $apellidoPaterno, $apellidoMaterno, $nombre, $correoElectronico,
							$usuario, $password, $puesto , $tel, $ext, $tipo)
	{
		$ultima_persona = $this->AltaPersona($apellidoPaterno, $apellidoMaterno,$nombre,$correoElectronico);			
		$db = new DB();
		if($ultima_persona > 0)
		{
			$sql = 
					"INSERT INTO RECLUTADOR (idpersona, idempresa, usuario, password, puesto, 
					telefono, ext, tipo)
					VALUES (". $ultima_persona .", ". $empresa .", '". trim($usuario) ."', 
					'". trim($password) ."','". $puesto ."','". $tel ."','". $ext ."','". $tipo ."');";
			$db->Conectar();
			$db->Query($sql);
			$filasAfectadas = $db->FilasAfectadas();
			$db->Cerrar();
			return $filasAfectadas;
		}
	}
	
	function ValidaExistente($usuario)
	{
		$db = new DB();
		$sql = "SELECT usuario from reclutador WHERE usuario ='". $usuario ."';";
		$db->Conectar();
		$db->Query($sql);
		$numLineas = $db->NumLineas();
		$db->Cerrar();
		if($numLineas > 0)
			return true;
		else
			return false;
	}

	function ModificaReclutador($idPersona, $idReclutador, $idEmpresa, $aPaterno, $aMaterno, $nombre, $correoElectronico,
							$usuario, $password, $puesto , $tel, $ext)
	{

		$res = $this->ModificaPersona($idPersona, $correoElectronico, $aPaterno, $aMaterno, $nombre);
		$db = new DB();
		if($res > 0)
		{
			$sql = 
					"UPDATE reclutador 
					SET usuario = '". trim($usuario) ."',";
					
			if($password != "")
				$sql.= "password = '". trim($password) ."',";
			
			$sql.= "
					puesto = '". $puesto ."',
					telefono = '". $tel ."',
					ext = '". $ext ."'
					WHERE idpersona = ". $idPersona ." AND
					idreclutador = ". $idReclutador ." AND
					idempresa = ". $idEmpresa;
			$db->Conectar();
			$db->Query($sql);
			$db->Cerrar();
			return $db->FilasAfectadas();
		}
	}

	function EliminaReclutador($idPersona)
	{
		$db = new DB();
		$db->Conectar();
		$sql = "DELETE FROM reclutador WHERE idpersona =". $idPersona ." AND tipo <> 'A'"; 
		$db->Query($sql);
		$db->Cerrar();
		if($db->FilasAfectadas() > 0)
			$this->EliminaPersona($idPersona);	
	}
	
	function RecuperarPassword($usuario, $email, $password)
	{
		$db = new DB();
		$db->Conectar();
		$sql = "SELECT * FROM reclutador r, persona p WHERE r.usuario ='". $usuario ."' 
				AND r.idpersona = p.idpersona
				AND p.correoelectronico = '". $email ."'
				"; 
		$db->Query($sql);
		if($db->NumLineas() == 1)
		{
			$db->Cerrar();
			$this->CambiarPassword($usuario, $password);
			return true;
		}
		else
		{
			$db->Cerrar();
			return false;
		}
	}

	function CambiarPassword($usuario, $password)
	{
		$db = new DB();
		$db->Conectar();
		$sql = 	"
				UPDATE reclutador SET
				password = '". trim($password) ."' 
				WHERE usuario = '". $usuario ."'"
				;
		$db->Query($sql);
		$db->Cerrar();
		return $db->FilasAfectadas();
	}
	
	function ObtenerFavoritos($idReclutador)
	{
		return "SELECT * FROM favoritos f, curriculum c, persona p, aspirante a 
					WHERE
					a.idpersona = p.idpersona
					AND
					c.nocta = a.nocta
					AND
					f.idcurriculum = c.idcurriculum
					AND
					idreclutador = ". $idReclutador. " ORDER BY p.nombre";
	}

	function GuardarFavorito($idCurriculum, $idReclutador)
	{
		$db = new DB();
		$db->Conectar();
		$sql = "SELECT * FROM favoritos WHERE idreclutador=".$idReclutador." AND idcurriculum=".$idCurriculum; 
		$db->Query($sql);
		if($db->NumLineas() <= 0)
		{
			$sql = "INSERT INTO favoritos(idreclutador, idcurriculum) VALUES(".$idReclutador.", ".$idCurriculum.")"; 
			$db->Query($sql);
		}
		$db->Cerrar();
		return $db->FilasAfectadas();
	}
	
	function EliminarFavorito($idCurriculum, $idReclutador)
	{
		$db = new DB();
		$db->Conectar();
		$sql = "DELETE FROM favoritos WHERE idreclutador=".$idReclutador." AND idcurriculum=".$idCurriculum; 
		$db->Query($sql);
		$db->Cerrar();
		return $db->FilasAfectadas();
	}
	
	function DatosReclutadorAdministrador($idEmpresa)
	{
		$db = new DB();
		$sql= "SELECT * FROM reclutador r, persona p WHERE 
				r.idpersona = p.idpersona 
				AND tipo = 'A'
				AND r.idempresa=". $idEmpresa;

		$db->Conectar();
		$db->Query($sql);
		$row = $db->GetArray(0);
		$this->_idReclutador = $row["idreclutador"];
		$this->_idPersona = $row["idpersona"];
		$this->_idEmpresa = $row["idempresa"];
		$this->_usuario = $row["usuario"];
		$this->_password = $row["password"];
		$this->_puesto = $row["puesto"];
		$this->_telefono = $row["telefono"];
		$this->_ext = $row["ext"];
		$this->_tipo = $row["tipo"];
		$this->_idPersona = $row["idpersona"];
		$this->_apellidoPaterno = $row["apellidopaterno"];
		$this->_apellidoMaterno = $row["apellidomaterno"]; 
		$this->_nombre = $row["nombre"];
		$this->_correoElectronico = $row["correoelectronico"];
		$db->Cerrar();	
	}
	
	function ObtenerEmails($estatus)
	{
		$estatus = str_replace("-", "','", $estatus);
		return "SELECT correoelectronico FROM persona p, reclutador r, empresa e
				WHERE 
					r.idpersona = p.idpersona
				AND
					e.idempresa = r.idempresa
				AND
					e.estatusempresa IN('". $estatus ."')";
	}
}
?>